<?php

namespace App\Admin\Forms\Bureau;

use App\Models\Bureau\WxClub;
use App\Wen\Utils\UserUtils;
use Dcat\Admin\Contracts\LazyRenderable;
use Dcat\Admin\Traits\LazyWidget;
use Dcat\Admin\Widgets\Form;

class RefuseClubNoticeForm extends Form implements LazyRenderable
{
    use LazyWidget;

    /**
     * 处理表单请求.
     *
     * @param array $input
     *
     * @return mixed
     */
    public function handle(array $input)
    {
        $club_id = $input['id'];
        $title = $input['title'];
        $content = $input['content'];

        if(_empty_($title) || _empty_($club_id) || _empty_($content)){
            return $this->response()->error('参数错误');
        }

        $club = WxClub::find($club_id);
        if($club){
            UserUtils::add_user_notice(9001, $club->user_id,$title,$content,100);
            return $this->response()
                ->success('发送成功.')
                ->refresh();
        }else{
            return $this->response()->error('选手不存在');
        }
    }

    /**
     * 构建表单.
     */
    public function form()
    {
        $club_id = $this->payload["id"];
        $club = WxClub::find($club_id);
        if($club){
            $this->hidden('id')->value($club->id);
            $this->html(function () {
                return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">当你想给俱乐部主理人发送系统通知时，可以操作这里，正常快速审核情况下，你可以直接在列表页点击开关</div>';
            }, '');
            $this->text('title', '通知标题')->default('俱乐部创建审核被驳回');
            $this->textarea('content', '通知内容')->default('您的创建的'.$club->name.'被驳回，一般是名字，简介，头像不合规等');
        }else{
            $this->html(function () {
                return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">所对应的俱乐部申请不存在</div>';
            }, '');
        }
    }
}
